package com.mss.media.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.mss.media.dto.AddAdminDTO;
import com.mss.media.dto.AdminLoginDto;
import com.mss.media.entity.MediaAdmin;

import javax.servlet.http.HttpServletRequest;

/**
 * <p>
 * 管理员 服务类
 * </p>
 *
 * @author runqiang
 * @since 2021-12-01
 */
public interface IMediaAdminService extends IService<MediaAdmin> {
    /**
     * 管理员登录
     *
     * @param dto 登录信息
     * @return token
     */
    String adminLogin(AdminLoginDto dto);

    /**
     * 查询管理员信息
     *
     * @return 管理员信息
     */
    MediaAdmin adminInformation(HttpServletRequest request);

    /**
     * 根据账号查询管理员信息
     *
     * @return 管理员信息
     */
    MediaAdmin selectByAccount(String account);

    /**
     * 解析账号
     */
    String parsingAccount(HttpServletRequest request);

    /**
     * 查询管理员权限编码-->管理员拥有的权限
     * @param adminAccount 管理员账号
     * @return 权限编码
     */
    String selectAdminRole(String adminAccount);

    /**
     * 添加管理员
     *
     * @param dto 账号信息
     * @param request 请求头
     * @return 密码
     */
    String addAdmin(AddAdminDTO dto,HttpServletRequest request);
}
